package com.ildepinc.persistence.interfaces;

import java.util.HashMap;

import com.ildepinc.persistence.enums.NewProgressiveMethod;

public interface TableGenericBehaviour {
  String composePkWhereCond();

  NewProgressiveMethod getNewProgressiveMethod();

  HashMap<String, Object> getPrimaryKeys();

  String getSchema();

  String getSqlCreateTable();

  String getSqlDelete();

  String getSqlInsert();

  String getSqlSelect();

  String getSqlUpdate();

  String getTableName();

  Boolean isPkAutoIncremental();

  Boolean isPkSingleColumn();

  void setNewProgressiveMethod(NewProgressiveMethod newProgressiveMethod);

  void setPkAutoIncremental(Boolean pkAutoIncremental);

  void setPkSingleColumn(Boolean singleColumn);

  void setPrimaryKeys(HashMap<String, Object> primaryKeys);

  void setSchema(String schema);

  void setSqlCreateTable(String sqlCreateTable);

  void setSqlDelete(String sqlDelete);

  void setSqlInsert(String sqlInsert);

  void setSqlSelect(String sqlSelect);

  void setSqlUpdate(String sqlUpdate);

  void setTableName(String tableName);

  void clear();

  void setDefaults(String schema);
}
